# 垃圾 / 广告 / 拉人 / 赌博 / 成人 等启发式关键词
# 语言混合，统一用不区分大小写的子串匹配实现；后续可升级为正则 + 词边界。

keywords_spam = [
    'airdrop','空投','bonus','free','免费','代理','引流','返利','倍率','casino','赌','下注','bet',
    'promo','成人','色情','色','xxx','邀请链接','join chat','pump','拉盘','快速致富','binary options',
    '募资','telegram group invite','spam','垃圾','scam','诈骗','骗','fake','假','bot','机器人',
    'auto','自动','mass','批量','flood','刷屏','advertisement','广告','推广','宣传','marketing'
]

def match_spam_keywords(text: str | None) -> int:
    if not text:
        return 0
    base = text.lower()
    hits = 0
    for kw in keywords_spam:
        if kw.lower() in base:
            hits += 1
            if hits >= 8:  # 提前截断，防止无意义继续
                break
    return hits

def get_spam_keywords():
    return keywords_spam
